ALPR (Automatic License Plate Recognition) is an image-processing approach that often functions as the core module of “intelligent” transportation infrastructure applications. License plate recognition techniques, such as ALPR, can be employed to identify a vehicle by automatically reading a license plate utilizing image processing and character recognition technologies. A license plate recognition operation can be performed by locating a license plate in an image, segmenting the characters in the captured image of the plate, and performing an OCR (Optical Character Recognition) operation with respect to the characters identified.
In general, an OCR engine can be optimized for performance with respect to a document having a uniform substrate (often the ‘paper’) with known or unknown characters. The substrate (the ‘plate’ background) of the license plate, however, is quite non-uniform due to noise with a constrained set of characters and fonts. Hence, the OCR engine optimized for document OCR is not optimum for the license plate OCR. The task of recognizing characters on the license plate is particularly difficult due to a number of challenging noise sources, for example, highly non-uniform backgrounds, touching or partially occluding objects (e.g., license plate frames), excessive shadows, and generally poor image contrast. Such noises present a much more challenging OCR problem than that typically seen in standard document scanning applications.
ALPR is a key technology for many transportation business. A fundamental capability within most ALPR systems is that of OCR. An example of some basic technologies driving OCR engines for license plate optical character recognition is disclosed in U.S. patent application Ser. No. 13/352,554, which was filed on Jan. 18, 2012 and is incorporated herein by reference in its entirety.
A SNoW (Sparse Network of Winnows) classifier based OCR engine using SMQT features have been found to perform better than other state of the art engines such as IDM-NN and Tesseract OCR in terms of accuracy and processing speed. One negative attribute of this OCR approach is the memory footprint required for the classifier. In order to address the problem of individual fonts across different U.S. states, it is typical to train a separate OCR engine that is highly tuned for each font. Unfortunately, as more state fonts are added to the engine, the RAM utilization and size of the resulting classifier on disk grows rapidly. Another customer requirement for an ALPR system is high throughput rates (to keep up with traffic volumes). This is typically handled by launching multiple instances of the ALPR engine, thereby achieving high throughput via parallelization. Unfortunately, this compounds the memory management problems.